From b4aa498fe742ac1d95d484903e8cf4f1e0f65e4b Mon Sep 17 00:00:00 2001 From: Carlos Garnacho Date: Tue, 15 Dec 2015 23:20:40 +0100 Subject: [PATCH] GdkWindow: Iterate through seats in gdk_window_set_cursor() And set the pointer on all seat pointers, equivalent to the master pointer lookup we were performing with GdkDeviceManager --- gdk/gdkwindow.c | 19 ++++++------------- 1 file changed, 6 insertions(+), 13 deletions(-) diff --git a/gdk/gdkwindow.c b/gdk/gdkwindow.c index 2189004434..961c787671 100644 --- a/gdk/gdkwindow.c +++ b/gdk/gdkwindow.c @@ -6212,28 +6212,21 @@ gdk_window_set_cursor (GdkWindow *window, if (!GDK_WINDOW_DESTROYED (window)) { - GdkDeviceManager *device_manager; - GList *devices, *d; + GdkDevice *device; + GList *seats, *s; if (cursor) window->cursor = g_object_ref (cursor); - device_manager = gdk_display_get_device_manager (display); - devices = gdk_device_manager_list_devices (device_manager, GDK_DEVICE_TYPE_MASTER); + seats = gdk_display_list_seats (display); - for (d = devices; d; d = d->next) + for (s = seats; s; s = s->next) { - GdkDevice *device; - - device = d->data; - - if (gdk_device_get_source (device) == GDK_SOURCE_KEYBOARD) - continue; - + device = gdk_seat_get_pointer (s->data); gdk_window_set_cursor_internal (window, device, window->cursor); } - g_list_free (devices); + g_list_free (seats); g_object_notify_by_pspec (G_OBJECT (window), properties[PROP_CURSOR]); } } -- 2.30.2